XCO Deployment for High Availability

Overview

A high-availability cluster is a group of servers that provide continuous up time or minimum down time for the applications on the servers in the group. If an application on one server fails, another server in the cluster maintains the availability of the application.

In the following diagram, XCO is deployed on the Server. The two XCO instances are clustered and configured with one IP address ensuring that clients need to reach only one endpoint. All XCO services are installed on each node. The node on which XCO is installed is the active node and processes all requests. The other node is the standby node that processes all the requests when the active node fails.

Click to expand in new window
Two-node high-availability deployment

All operations provided by XCO services must be idempotent, meaning they produce the same result for multiple identical requests or operations. For more information, see the "Idempotency" section in the ExtremeCloud Orchestrator CLI Administration Guide, 3.6.0 .

XCO uses the following services to implement an HA deployment:

Note

Note

Although Kubernetes run as a single-node cluster tied to the virtual IP, XCO CLIs still operate correctly when they run from active or standby node. Commands are converted to REST and run over HTTPS to the ingress controller via the virtual IP tied to the active node.

The efa status confirms the following:

Example

The following example shows the active and standby node status in a multi-node Server deployment

$ efa version Version : 3.4.0
Build: GA
Time Stamp: 23-08-11:00:46:39
Mode: Secure
Deployment Type: multi-node
Deployment Platform: SERVER
Deployment Suite: Fabric Automation
Deployment IP Mode: ipv4
Virtual IP: 10.32.85.119
Node IPs: 10.32.85.111,10.32.85.114
Node IPv6s: 2620:100:c:e085:20c:29ff:fe6c:a2da
--- Time Elapsed: 2.039521ms ---

$ efa status
+-----------+---------+--------+--------------+
| Node Name | Role    | Status | IP           |
+-----------+---------+--------+--------------+
| efa1      | active  | up     | 10.32.85.111 |
+-----------+---------+--------+--------------+
| efa2      | standby | up     | 10.32.85.114 |
+-----------+---------+--------+--------------+
--- Time Elapsed: 5.293435458s ---